Foundation Builds Quick Start
This quick start guide explains the options for re-building the packages and platforms provided by the Symbian Foundation. Overview There are four main options for building the platform or an individual package: # Build from Carbide.c++ # Manual build from command line using Raptor and supporting scripts # Semi-automated build using the Foundation Build Framework (Helium) # Automated build using Hudson The build options are appropriate in different situations: if you're doing a one-off build of a package then using Carbide.c++ or a manual command line build is probably the fastest alternative. If however you're going to be building the whole platform on a regular basis then automating the process with Hudson or Helium will have long term advantages. The common environment required to build Symbian Foundation packages is described here. For a brief description of the hardware (and software) used within the Foundation to support our builds see Build Machinery. Manual Build From Command Line It is possible to build individual packages and even complete platforms from the command line using Raptor (SBSv2) and supporting scripts. The article How to Build a Package provides a step by step guide on how to build single packages. A same approach can be extended to build the full platform. However as the process can vary slightly between releases, platform build instructions are included in the release notes for each PDK (the article How to build the Platform has links to the relevant sections in the release notes). Using the Foundation Build Framework Helium is an ANT based framework which provides a set of scripts and ANT targets to make it easier to repeat and automate builds. It is used in conjunction with the Foundation Build Framework (FBF), a set of configuration files that we've specialised to make Helium run Foundation builds. Helium is delivered with the PDT. If you are running regular builds the command line approach you'll find that Helium makes it a lot easer to run automated builds. For more information on how to set up package and platform builds with Helium see: * Setup Package Builds with FBF/Helium. * How to build the Platform. Automated Build Using Hudson Hudson is a web based tool which can "sit on top of" the other types of builds described earlier (except Carbide++), running each manual FBF/Helium or SBSv2 step in a pre-defined sequence. The tool is easy to set up, and makes builds easier and more repeatable than using either the command line build tools or Helium directly. For more information see Using Hudson for Building and Build machinery#Hudson. What Compiler Versions Should I Use? Each platform (SDPR) program will eventually define a standard set of compiler versions to be used for that program. The compilers used to build a specific package are therefore derived from the platform(s) it is included in. In some cases this will mean a single package will be built multiple times with different compiler versions. The compiler selections currently used to build Symbian^2 are shown below: * System Compiler: RVCT 2.2 (build 616) ** ARMv5 ABIv2 only * WINSCW Compiler: MWCC 3.2.5 (build 479) * Application Compiler: GCC-E 4.3 How Do I Determine Package Build Status? Current build status for the Symbian packages can be obtained from the package landing page for a given package. See tab "Build results" on each package landing page. Summary This quick start guide outlines the options for re-building the packages and platforms provided by the Symbian Foundation, and provides links to the key documents explaining how to get started with each approach. Related Info * Developer Guidelines: Foundation Builds * Contributor Guidelines * Build machinery * How to build the Platform Category:Symbian Platform Contributors Category:Builds Category:Quick Start